<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
        
    </style>
</head>
<body>
    
</body>
<script>
    // 3. 封装 传入一个数值数组，将所有数值增加50%的 函数

    function add50(myarr){
        // 拿到数组内的而所有数据
        for(var i=0;i<myarr.length;i++){
            // 增加50%
            myarr[i] = myarr[i] * 0.5 + myarr[i];
        }
    }
    // var arr = [2,3,4,5,6];
    // console.log(arr);
    // add50(arr);
    // console.log(arr);

    // 4. 封装 传入一个数组和一个数据，判断该数组中是否存在该数据，返回布尔值的 函数
    function check(myarr, data){
        // 解析数组中的每个数据
        for(var i=0;i<myarr.length;i++){
            // 逐个判断
            if(myarr[i] === data){
                // 只要有一个相等，返回true，同时结束函数
                return true;
            }
        }
        // 数组内所有数据全比较完之后，没有找到相等了，才是没找到
        return false;
    }
    // var arr = [4,5,6,67,8];
    // console.log(arr);
    // var res = check(arr, 7);
    // console.log(res);
    // console.log(arr);

    // 5. 封装 传入一个排好序的数值数组和一个数值，要求按照原来的规律插入其中 函数
    function insert(myarr, data){
        // 利用方法操作
        // 先插入
        // myarr.push(data)
        // 重新排序
        // myarr.sort(function(a,b){
        //     return a-b;
        // })

        // 利用索引+长度操作
        // 先找到数据要插入的位置
        for(var i=0;i<myarr.length;i++){
            if(data < myarr[i]){
                break;
            }
        }
        // 从要插入的位置到数组最后所有数据集体向后移动一位
        for(var j=myarr.length;j>i;j--){
            arr[j] = arr[j-1];
        }
        // 将要插入的数据，插入到指定位置
        myarr[i] = data;
    }
    var arr = [3,6,9,14];
    console.log(arr);
    insert(arr, 7);
    console.log(arr);


</script>
</html>